home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_oth / tm480 / tmexam.exe / SWEEP.TSK < prev    next >
Text File  |  1991-09-10  |  6KB  |  168 lines

  1. ; Title   : SWEEP.TSK                   Last Updated : June 20, 1991
  2. ; Author  : Steve Johnson - FmP.        Version      : 1.01
  3. ; Purpose : Makes a batch file to process all instances of
  4. ;         : a given filespec.
  5. ; Notes   : The task uses ATTRIB to look for wildcard filespec 
  6. ;         : throughout the disc, optionally redirecting output 
  7. ;         : creating a file; sweep.bat and then edits it using 
  8. ;         : save and restore commands using new ASCII feature.
  9. ; Latest  : Delete SWEEP.DAT if no files found.
  10.  
  11. hexvar cr,0d
  12.  
  13. logical file
  14. logical confirm
  15.  
  16. var cmd,8,'LIST'
  17. var error,80
  18. var null,1
  19. var spec,12,'   SWEEP'
  20. var sweepline,82
  21. var spaces9,9,'         '
  22. var y,1,'Y'
  23. int i
  24. vconst cls,11
  25. vconst cel,55
  26.  
  27. end
  28.  
  29. forms logon.ovr
  30. lookfor sweep.ovr
  31. if not found
  32.   insert SPEC SPEC
  33.   put "NO_FORMS"    ;logon.ovr open already!
  34.   stop
  35. fi
  36. forms sweep.ovr
  37. put wallpaper wait 0 noclear
  38. move '*.BAK' to spec
  39. fieldfill spec y cmd
  40. put 'QUESTIONS' noclear
  41. get spec file cmd
  42. trim spec cmd
  43. if anyfk
  44.   stop
  45. fi
  46. move true to hide
  47. if spec ne null
  48.   display cls 
  49.   displayln 'SWEEP: looking for all instances of ' spec ' :'
  50.   display 'Please wait...' cr
  51.   if file
  52.     run 'attrib \' spec 1 '/s >sweep.dat' 
  53.     clear error
  54.     scanvid 1 giving error
  55.     if error ct 'not found'   ;ATTRIB doesnt set errorlevel!
  56.       displayln 'SWEEP: Sorry, no files match your specification - aborting'
  57.       erase 'sweep.dat'                 ;erase empty file
  58.       stop
  59.     fi
  60.     displayln 'SWEEP: System has created SWEEP.DAT containing ATTRIB output'
  61.     displayln 'SWEEP: Taskmaster now creating edited version SWEEP.BAT'
  62.     behave 3 sweep.bat                  ;open file for writing
  63.     move resp to i                      ;save the response
  64.     restore ascii 'sweep.dat'           ;open file for reading
  65.     if resp <> 0 or i <> 0              ;if either response non-zero
  66.       displayln 'Edit failed ...'       ;get out
  67.       stop
  68.     fi
  69.     while resp = 0                      ;until end of input
  70.       clear sweepline
  71.       restore sweepline
  72.       if resp = 0
  73.         replace '~~~~~~~~~' of sweepline with cmd
  74.         data sweepline
  75.       fi
  76.     fi
  77.     behave 0                            ;close output file
  78.     restore                             ;close input file
  79.     displayln 'SWEEP: Edit completed. Erasing SWEEP.DAT'
  80.     erase 'sweep.dat'                   ;erase input file
  81.     cursor 23 0 cel
  82.     ask confirm 'Would you like to see your batch file SWEEP.BAT ? (Y/N)'
  83.     if confirm
  84.       run 'LIST SWEEP.BAT' 
  85.     fi
  86.     cursor 23 0 cel
  87.     ask confirm 'Run the batch file SWEEP.BAT ? (Y/N)'
  88.     if confirm
  89.       run 'SWEEP' 
  90.     fi
  91.     cursor 23 0 cel
  92.     ask confirm 'Erase the file SWEEP.BAT ? (Y/N)'
  93.     if confirm
  94.       erase 'SWEEP.BAT'
  95.     fi
  96.   else
  97.     run 'attrib ' spec 1 '/s |more' 
  98.   fi
  99. fi
  100. stop
  101. endtask
  102. @video
  103. @head left,SWEEP.TSK
  104. @head right,"Copyright (c) FmP 1991"
  105. @head centre,'Automation example'
  106. @nf questions
  107. @acceptfk f10
  108. @overlay
  109. @str
  110. @logical
  111. @str
  112. @dim
  113. @banner
  114. @win line3,column4,depth16,width72
  115.  
  116.   This  task  uses the DOS ATTRIB command to return full hierarchical 
  117.   filenames  for all instances of a filename you supply.   In  itself 
  118.   not  very useful.  If asked to do so however,  Taskmaster  can  use 
  119.   the  list  as a basis for a BATCH file (SWEEP.BAT)  in  which  each 
  120.   filename  is  preceded by a command of your choice.  This  is  very 
  121.   useful - you can now delete ALL your BAK files in one operation! 
  122.  
  123.   Please enter a filespec [*.bak       ]
  124.  
  125.   Create SWEEP.BAT ? [y] N=Screen display only.
  126.   If Yes, what command do you want to execute? [LIST    ] 
  127.  
  128.   Note:  You  will  be  given the chance  to  view  SWEEP.BAT  before 
  129.          deciding whether you wish to run it.
  130. @bright
  131. @win line20,column10,depth3,width60,pattern 176
  132.  
  133.                     Press F10 to quit
  134. @end
  135. @map x,b2
  136. @map Y,b1
  137. @map Z,b0
  138. @nf WALLPAPER
  139. @COL CHAR,green,blue
  140. @translate
  141. @gon
  142. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  143. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  144. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  145. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  146. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  147. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  148. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  149. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  150. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  151. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  152. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  153. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  154. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  155. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  156. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  157. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  158. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  159. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  160. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  161. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  162. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  163. XYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXY
  164. YZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZ
  165. ZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZXYZX
  166. @end
  167. @eof
  168.